#include <bits/stdc++.h>
using namespace std;
const int N=1e5+50;
typedef long long ll;
int n,m;
ll a[N],b[N],c[N];
bool cmp(ll a,ll b){
    return a>b;
}
int main(void){
    scanf("%d%d",&n,&m);
    ll sum=0;
    for(int i=0;i<n;i++){
        scanf("%lld%lld",&a[i],&b[i]);
        c[i]=a[i]-b[i];
        sum+=a[i];
    }
    sort(c,c+n,cmp);
    // for(int i=0;i<n;i++){
    //     printf("%d\n",c[i]);
    // }
    // for(int i=0;i<n;i++){
    //     if(i==0){
    //         pre[i]=c[i];
    //     }else{
    //         pre[i]=pre[i-1]+c[i];
    //     }
    // }
    int cnt=0;
    int i=0;
    while(sum>m){
        if(i<n){
            sum-=c[i++];
        }else{
            printf("-1\n");
            return 0;
        }
        cnt++;
    }
    printf("%d\n",cnt);
    return 0;
}